SYSTEM ANALYSIS & DESIGN II

Course Description

This course is about Object-oriented Systems Analysis and Design, which view a system as a collection of self-contained objects that have both data and processes using creation of Unified Modeling Language (UML). UML provides a common vocabulary of object-oriented terms and programming techniques that is rich enough to model any systems development project from analysis and implementation. The Lab work is designed to develop and implement real business systems through lab projects.

Course Rationale

The purpose of this course is to enable students to do SAD—not just read about it, but understand the issues so students can actually analyze and design systems. This course introduces each major techniques of UML , explains what it is, explains how to do it, presents an example, and provides opportunities for students to practice before they do it for real in a project. After completing this course, the student will be able to perform that steps in the system development life cycle (SDLC) process and analyze and design a system by using UML.

Course Objectives

1. Familiar with the advanced concepts of systems analysis and design.
2. Familiar with common modeling techniques of UML.
3. Familiar with Analysis and Design of Information System.
4. Students will become familiar with CASE tools for analysis, design and construction of complex software systems and they can apply analysis, design and construction techniques to a real life system.

Learning Outcomes

Upon successful completion of the course, the students will demonstrate competency by being able to:
1. To differentiate different types of SDLC models and select an appropriate model.
2. To able to use different types of feasibility analysis.
3. To determine the most effective strategies for requirement analysis
4. To determine how to select projects.
5. To understand different types of UML Diagram and implement on the information system

Required Textbook

Dennis A., Wixom B. H., Tegarden D., System Analysis and Design with UML Version 2.0, ISBN: 9780470400302 Third Edition, John Wiley &Sons, Inc., 2005

Group Project Goal

To submit a comprehensive project proposal for any organization which contains all UML diagrams that have been learnt through this course.

Group Assignment

Objectives

  1. To encourage collaboration and sharing environment among students.
  2. To introduce Social Writing in Education using Wiki technology.


Tasks

  1. Choose any Chapter from the course outline
  2. Develop and publish Chapter's content using http://www.wikispaces.com/ collaboratively among team members.
  3. Design and create related activities to promote effective and fun learning for the chapter.

Course Plan

Topics
Week
Events/Tasks
Chapter 1- Introduction
Knowledge:
  • Describe the System Development Life Cycle.
  • Explain various System development methodologies.
  • Describe the use of models in specific situation.
  • Discuss role of project team.
  • Explain the difference between methodologies.
  • Explain OOPS terminologies

Cognitive Skills
  • Develop the student's ability of dealing different methodologies in given situation
1-2
Project Tasks:
  1. Initiate idea, define problems and objectives
  2. Choose SDLC methodology



Chapter 2 – Project Identification and Selection – Initiation
Knowledge:
  • Discuss the business need and system request.
  • Explain system request and its elements.
  • Discuss different type of feasibility analysis.
  • Describe how organization select projects.

Cognitive Skills
  • Develop the analyzing skill of business need
  • Develop skills of creating a System request
  • Develop skills to perform a feasibility analysis.
  • Understand how project is selected in some organization
3
Project Tasks:
  1. Submit System Request Form
  2. Perform feasibility analysis



Chapter 3 – Project Management

Knowledge:
  • Describe the goals of project management.
  • Explain the components of project workplan.
  • Understand why project teams use timeboxing.
  • Understand how to staff a project.
  • Understand how computer-aided software engineering, standards, and documentation improve the efficiency of a project.

Cognitive Skills
  • Identify a list of system development project's tasks
  • Develop an ability to draw a Gantt Chart using any drawing tools
  • Calculate project size
4
Quiz 1 - Feb 25, 2014

Project Tasks:
  1. Set tasks distribution among team members
  2. Develop a project Gannt Chart using Ms Project



Chapter 4 – Requirements Analysis

Knowledge:
  • Explain functional and non functional requirements.
  • Discuss the requirement definition.
  • Explain requirement analysis and gathering techniques.
  • Explain different situation of requirement analysis.

Cognitive Skills
  • Develop an ability of understanding requirement analysis techniques
  • Develop the capability of selecting the suitable techniques of requirement analysis
5
Project Tasks:
  1. Define system functional and non functional requirements
  2. Choose requirement analysis.



Chapter 5 – Use Case Diagrams – Analysis
Knowledge:
  • Understand the importance of Use case diagram.
  • Describe the role of use case modeling in software development.
  • Explain basic and extended elements of use case.
  • Explain use case descriptions.
  • Describe the relationship between use cases.
  • Describe the role of activity modeling in software development.
  • Explain elements of Activity diagram.

Cognitive Skills
  • Develop the student's ability to draw an activity diagram from a simple problem description.
  • Develop the student's ability to draw a use case model from a simple problem description.
  • Identify scenario for use case.
  • Identify a subsidiary use case that provides some come value to two or more use case at a higher level of abstraction.
6-7
Mid Term Exam - March 18, 2014

Project Tasks:
  1. Develop activity diagram
  2. Write use case description for each use case
  3. Develop use case diagram



Chapter 6 – Class Diagrams
Knowledge:
  • Explain the rules and style guidelines for creating CRC cards, class diagram and object diagram.
  • Explain the process use to create CRC cards, class diagram and object diagram.
  • Explain the relationships between classes.
  • Explain the role of generalization and specialization in a class model.

Cognitive Skills:
  • Identify a list of candidate classes from a requirements document.
  • Model relation-ship between classes and able to create CRCcard , class diagram and object diagram.
9-10
Project Tasks:
  1. Create CRC card
  2. Develop class diagram and object diagram



Chapter 7– Interaction Diagrams
Knowledge:
  • Describe the role of interaction diagrams in software development.
  • Explain the rules and styles guidelines for sequence and communication diagrams and behavioral state machine.
  • Explain the process used to create sequence and communication diagrams and behavioral state machine.
  • Explain the relationship between the behavioral models and the structural and functional models.

Cognitive Skills:
  • Develop the student's ability of creating sequence and communication diagrams and behavioral state machine from a problem description.
11-12
Quiz 2 - Apr 15, 2014

Project Tasks:
  1. Develop sequence and communication diagrams
  2. Create behavioral state machine.



Chapter 8 – Architecture – Design
Knowledge:
  • Explain elements of the Physical Architectural Layer.
  • Explain Infrastructure Design
  • Explain nonfunctional Requirements affect the design of the physical architecture layer .
  • Explain how to create hardware and software specification

Cognitive Skills:
  • Develop the student's ability to create hardware and software component.
  • Develop an ability of understanding a different physical architecture components
13
Project Tasks:
  1. Prepare hardware and software specification
  2. Sketch system interface design



Chapter 9 – Development – Implementation
Knowledge:
  • Understand different type of tests and when to use them

Cognitive Skills
  • Develop the student's ability of understanding the different type of tests on different situations.
14
Project Tasks:
  1. Prepare system testing plan